MMVideoPlayer 接口文档

1. 配置相关

  • 初始化SDK
+ (void)initSDKWithAppId:(NSString *)appId;
+ (NSString *)appId;
  • 设置User-Agent
+ (void)configUserAgent:(NSString *)userAgent;
+ (NSString *)userAgent;
  • 设置视频缓存路径
+ (void)configCachePath:(NSString *)cachePath;
+ (NSString *)cachePath;
  • 设置缓存空间大小
+ (void)configCacheSpaceLimit:(int)size;
+ (int)cacheSpaceLimit;
  • 设置用户ID(1.0.9新增, 可选,建议设置,便于问题查找)
+ (void)setUserId:(NSString *)userId;
+ (NSString *)userId;
  • 清除视频缓存
+ (void)clearAllCache;
  • 获取SDK版本号
- (NSString *)version;

2. 日志

  • 打开调试日志
- (void)openDebugLog:(BOOL)console dir:(NSString)path;
  • 打点日志开启
- (void)openLogAnalyze:(BOOL)toggle;

3. 预加载

  • 添加预加载任务
- (void)preloadVideoWithURL:(NSURL *)videoURL completion:(void(^)(BOOL success, NSError *error))completion;

- (void)preloadVideoWithURL:(NSURL *)videoURL preloadSize:(int)size preloadTime:(int)time completion:(void (^)(BOOL, NSError * _Nonnull))completion;
  • 批量下载
- (void)preloadVideos:(NSArray<NSURL *> *)videoURLs;
  • 取消某个预加载任务
- (void)clearTask:(NSURL *)url;
  • 清空预加载任务
- (void)cleanAllTask;
  • 清空缓存
- (void)clearAllCache;

4. 播放控制

  • 设置代理
@property (nonatomic, weak) id<MMPlayerDelegate> delegate;
  • 准备播放
- (void)prepareToPlay:(NSURL *)url;

// 传入播放地址和域名(如果播放地址是ip地址,必须传入域名)
- (void)prepareToPlay:(NSURL *)url ofDomain:(NSString *)domain;
  • 是否已经准备好播放
@property (nonatomic, assign) BOOL isPreparedToPlay;
  • 播放当前视频
- (void)play;
  • 暂停播放当前视频
- (void)pause;
  • 销毁当前播放器
- (void)stop;
  • 是否自动播放
@property (nonatomic, strong) BOOL autoPlay;
  • 调整视频音量
@property (nonatomic, assign) CGFloat volume;
  • 是否需要进度控制
@property (nonatomic, assign) BOOL needProgress;
  • 是否正在播放
- (BOOL)isPlaying;
  • 跳转到播放位置
- (void)seekTo:(NSTimeInterval)time;
  • 获取当前视频播放位置
- (NSTimeInterval)currentPosition;
  • 获取视频时长
- (NSTimeInterval)duration;
  • 可播放时长
- (NSTimeInterval)playableDuration;
  • 循环播放控制
- (void)enableLoop:(BOOL)enable;
  • 设置静音
- (void)setMute:(BOOL)mute;
  • 启用硬解码
- (void)enableHardDecode:(BOOL)isEnable;
  • 获取视频size
- (CGSize)videoSize;
  • 获取视频元信息
@property (nonatomic, copy) NSDictionary *mediaMetadata;
  • 设置播放区域大小
- (void)setDisplaySize:(CGSize)size;
  • 设置视频渲染缩放模式
- (void)setPlayerScalingMode:(MPMovieScalingMode)mode;
  • 获取视频view
- (UIView *)renderView;
  • 截屏
- (UIImage *)snapshot;
  • 获取播放器状态
@property(nonatomic, readonly)  MPMoviePlaybackState playbackState;
  • 视频加载状态
@property(nonatomic, readonly)  MPMovieLoadState loadState;

5. 播放器代理

// 加载准备好可以播放了
- (void)player:(MMPlayer *)player isReadyToPlayWithDuration:(NSTimeInterval)duration;

// 播放器首帧渲染
- (void)player:(MMPlayer *)player startRenderingWithVideoSize:(CGSize)videoSize;

// 视频加载失败
- (void)player:(MMPlayer *)player isFailedLoadWithError:(NSError *)error;

// 播放进度(回调频率30Hz)
- (void)player:(MMPlayer *)player playToSeconds:(NSTimeInterval)seconds;

// 播放卡顿开始
- (void)playerStartStalling:(MMPlayer *)player;

// 播放卡顿结束
- (void)playerEndStalling:(MMPlayer *)player;

// 播放结束
- (void)playerIsPlayToEnd:(MMPlayer *)player;

// 即将开始循环播放
- (void)playerWillStartLoop:(MMPlayer *)player;

// 视频尺寸改变
- (void)player:(MMPlayer *)player playerDidVideoSizeChanged:(CGSize)videoSize;

// 视频分辨率
- (void)player:(MMPlayer *)player playerDidGetVideoResolution:(CGSize)videoResolution;

// 视频窗口尺寸改变
- (void)player:(MMPlayer *)player playerDidVideoWindowSizeChanged:(CGSize)videoSize;
Copyright © momo 2019 all right reserved,powered by Gitbook修订时间: 2020-03-02 12:11:05

results matching ""

    No results matching ""